/*!
    \copyright  Copyright (c) 2023 Qualcomm Technologies International, Ltd.
                All Rights Reserved.
                Qualcomm Technologies International, Ltd. Confidential and Proprietary.
    \file       storage_manager_ra_partition_types.h
    \defgroup storage_manager_ra_partition_types
    @{
        \ingroup storage_manager
        \brief      The public data types/structures of the ra partition variant
    
*/

#ifndef STORAGE_MANAGER_RA_PARTITION_TYPES_H_ 
#define STORAGE_MANAGER_RA_PARTITION_TYPES_H_  

/*! \brief The instance types of the random access partition */
typedef enum storage_manager_ra_partition_type_t
{
    /*! Select the default instance (0) */
    DEFAULT_PARTITION,
    /*! Select the user-defined instance  */
    PARTITION_INSTANCE,
    /*! Undefined instance  */
    INVALID_PARTITION_INSTANCE
} storage_mgr_ra_partition_type_t;

/*! \brief The address to find and open a buffer in the random access partition 
 *  \note The user-supplied instance is ignored if the type is DEFAULT_PARTITION */
typedef struct storage_manager_address_ra_partition_t
{
    storage_mgr_ra_partition_type_t type;
    /*! The number of instances range from 0 - 255 */
    uint8 instance;
} storage_mgr_addr_ra_partition_t;

/*! @} */

#endif /* STORAGE_MANAGER_RA_PARTITION_TYPES_H_  */